<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.3"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>SSDP Help: ITxn</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../jquery.js"></script>
<script type="text/javascript" src="../../dynsections.js"></script>
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr id="projectrow">
  <td id="projectalign">
   <div id="projectname">SSDP Help<span id="projectnumber">&#160;2.04.01</span>
   </div>
   <div id="projectbrief">仅供测试</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- 制作者 Doxygen 1.9.3 -->
<script type="text/javascript" src="../../menudata.js"></script>
<script type="text/javascript" src="../../menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
  initMenu('../../',false,false,'search.php','搜索');
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-types">Public 类型</a> &#124;
<a href="#pub-methods">Public 成员函数</a> &#124;
<a href="#pro-methods">Protected 成员函数</a> &#124;
<a href="../../d3/d54/struct_i_txn-members.html">所有成员列表</a>  </div>
  <div class="headertitle"><div class="title">ITxn<span class="mlabels"><span class="mlabel">abstract</span></span></div></div>
</div><!--header-->
<div class="contents">

<p>将事务上下文中的修改写入元素的接口  
 <a href="../../d0/d32/struct_i_txn.html#details">更多...</a></p>

<p><code>#include &lt;<a class="el" href="../../d8/d09/_i_a_t_txn_8h_source.html">IATTxn.h</a>&gt;</code></p>

<p>继承自 NonCopyableClass .</p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-types" name="pub-types"></a>
Public 类型</h2></td></tr>
<tr class="memitem:a3ab6535a3469ab6406fd8ef762d30760"><td class="memItemLeft" align="right" valign="top"><a id="a3ab6535a3469ab6406fd8ef762d30760" name="a3ab6535a3469ab6406fd8ef762d30760"></a>
typedef RefCountedPtr&lt; ICustomEntry &gt;(*&#160;</td><td class="memItemRight" valign="bottom"><b>DeserializeCustomItemFunc</b>) (byte const *data, size_t numBytes)</td></tr>
<tr class="separator:a3ab6535a3469ab6406fd8ef762d30760"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public 成员函数</h2></td></tr>
<tr class="memitem:abd224dc112e51af9e2376478848fe152"><td class="memItemLeft" align="right" valign="top"><a id="abd224dc112e51af9e2376478848fe152" name="abd224dc112e51af9e2376478848fe152"></a>
StatusInt&#160;</td><td class="memItemRight" valign="bottom"><b>CheckATScenesForWrite</b> (ATSceneP)</td></tr>
<tr class="separator:abd224dc112e51af9e2376478848fe152"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6d94730e1c8c34b8d93deb8e4329ed3a"><td class="memItemLeft" align="right" valign="top"><a id="a6d94730e1c8c34b8d93deb8e4329ed3a" name="a6d94730e1c8c34b8d93deb8e4329ed3a"></a>
ATDATACORE_EXPORT StatusInt&#160;</td><td class="memItemRight" valign="bottom"><b>SaveExPropDataForDirectChange</b> (ExPropHandleCR exProp, UInt32 start, UInt32 length)</td></tr>
<tr class="separator:a6d94730e1c8c34b8d93deb8e4329ed3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a59c9d6472cc5b8ea72bca4dd1dbadd09"><td class="memItemLeft" align="right" valign="top"><a id="a59c9d6472cc5b8ea72bca4dd1dbadd09" name="a59c9d6472cc5b8ea72bca4dd1dbadd09"></a>
ATDATACORE_EXPORT bool&#160;</td><td class="memItemRight" valign="bottom"><b>SupportsUndoableChanges</b> () const</td></tr>
<tr class="separator:a59c9d6472cc5b8ea72bca4dd1dbadd09"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a40230a03c7fc19a5f112e33a5bb07727"><td class="memItemLeft" align="right" valign="top"><a id="a40230a03c7fc19a5f112e33a5bb07727" name="a40230a03c7fc19a5f112e33a5bb07727"></a>
ATDATACORE_EXPORT StatusInt&#160;</td><td class="memItemRight" valign="bottom"><b>AddObjDescr</b> (ObjectRefP &amp;newObjRef, ATSceneP, ATObjectDescrP elDescr, TxnObjectAddOptions const &amp;opts=TxnObjectAddOptions())</td></tr>
<tr class="separator:a40230a03c7fc19a5f112e33a5bb07727"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a93a0357cd25a62738ab94b9cae1ed6e2"><td class="memItemLeft" align="right" valign="top"><a id="a93a0357cd25a62738ab94b9cae1ed6e2" name="a93a0357cd25a62738ab94b9cae1ed6e2"></a>
ATDATACORE_EXPORT StatusInt&#160;</td><td class="memItemRight" valign="bottom"><b>ReplaceObjectDescr</b> (ObjectRefP &amp;out, ObjectRefP zinRef, ATObjectDescrP newObjDscr, TxnObjectWriteOptions const &amp;opts=TxnObjectWriteOptions())</td></tr>
<tr class="separator:a93a0357cd25a62738ab94b9cae1ed6e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8010645e9376e2e116aa4cca1360ea2c"><td class="memItemLeft" align="right" valign="top"><a id="a8010645e9376e2e116aa4cca1360ea2c" name="a8010645e9376e2e116aa4cca1360ea2c"></a>
ATDATACORE_EXPORT StatusInt&#160;</td><td class="memItemRight" valign="bottom"><b>AddExProp</b> (ObjectRefP objRef, ExPropHandlerId handlerId, UInt32 exPropId, void const *exPropData, UInt32 length, UInt32 *outXAttrId=NULL, TxnExPropAddOptions const &amp;opts=TxnExPropAddOptions())</td></tr>
<tr class="separator:a8010645e9376e2e116aa4cca1360ea2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a979e2daad9a5d9f2b8756dbd2c1d0572"><td class="memItemLeft" align="right" valign="top"><a id="a979e2daad9a5d9f2b8756dbd2c1d0572" name="a979e2daad9a5d9f2b8756dbd2c1d0572"></a>
ATDATACORE_EXPORT StatusInt&#160;</td><td class="memItemRight" valign="bottom"><b>DeleteExProp</b> (ExPropHandleR exProp, TxnExPropWriteOptions const &amp;opts=TxnExPropWriteOptions())</td></tr>
<tr class="separator:a979e2daad9a5d9f2b8756dbd2c1d0572"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8c6c459a74a8d577822a8961b8d58513"><td class="memItemLeft" align="right" valign="top"><a id="a8c6c459a74a8d577822a8961b8d58513" name="a8c6c459a74a8d577822a8961b8d58513"></a>
ATDATACORE_EXPORT StatusInt&#160;</td><td class="memItemRight" valign="bottom"><b>ModifyExPropData</b> (ExPropHandleCR exProp, void const *data, UInt32 start, UInt32 length, TxnExPropWriteOptions const &amp;opts=TxnExPropWriteOptions())</td></tr>
<tr class="separator:a8c6c459a74a8d577822a8961b8d58513"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac148157f17ca67aeaeece3960ea82f41"><td class="memItemLeft" align="right" valign="top"><a id="ac148157f17ca67aeaeece3960ea82f41" name="ac148157f17ca67aeaeece3960ea82f41"></a>
ATDATACORE_EXPORT StatusInt&#160;</td><td class="memItemRight" valign="bottom"><b>ReplaceExPropData</b> (ExPropHandleCR exProp, void const *data, UInt32 newSize=0, TxnExPropWriteOptions const &amp;opts=TxnExPropWriteOptions())</td></tr>
<tr class="separator:ac148157f17ca67aeaeece3960ea82f41"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4a17a8eb66a2d6c566fa0681308811d6"><td class="memItemLeft" align="right" valign="top">ATDATACORE_EXPORT StatusInt&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d32/struct_i_txn.html#a4a17a8eb66a2d6c566fa0681308811d6">DeleteObject</a> (ObjectRefP obj, TxnObjectWriteOptions const &amp;opts=TxnObjectWriteOptions())</td></tr>
<tr class="memdesc:a4a17a8eb66a2d6c566fa0681308811d6"><td class="mdescLeft">&#160;</td><td class="mdescRight">从场景中删除元素  <a href="../../d0/d32/struct_i_txn.html#a4a17a8eb66a2d6c566fa0681308811d6">更多...</a><br /></td></tr>
<tr class="separator:a4a17a8eb66a2d6c566fa0681308811d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8c24a5818957e1d131cd451f64694237"><td class="memItemLeft" align="right" valign="top">ATDATACORE_EXPORT StatusInt&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d32/struct_i_txn.html#a8c24a5818957e1d131cd451f64694237">AddObject</a> (HEATObjectR newEl, TxnObjectAddOptions const &amp;opts=TxnObjectAddOptions())</td></tr>
<tr class="memdesc:a8c24a5818957e1d131cd451f64694237"><td class="mdescLeft">&#160;</td><td class="mdescRight">向场景中添加元素  <a href="../../d0/d32/struct_i_txn.html#a8c24a5818957e1d131cd451f64694237">更多...</a><br /></td></tr>
<tr class="separator:a8c24a5818957e1d131cd451f64694237"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae21e31eaa74e4d15acb245dff56f3f17"><td class="memItemLeft" align="right" valign="top">ATDATACORE_EXPORT StatusInt&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d32/struct_i_txn.html#ae21e31eaa74e4d15acb245dff56f3f17">ReplaceObject</a> (HEATObjectR obj, ObjectRefP in, TxnObjectWriteOptions const &amp;opts=TxnObjectWriteOptions())</td></tr>
<tr class="memdesc:ae21e31eaa74e4d15acb245dff56f3f17"><td class="mdescLeft">&#160;</td><td class="mdescRight">替换场景中已存在的元素  <a href="../../d0/d32/struct_i_txn.html#ae21e31eaa74e4d15acb245dff56f3f17">更多...</a><br /></td></tr>
<tr class="separator:ae21e31eaa74e4d15acb245dff56f3f17"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a62ce6318fda335635f2406a224e6c7e2"><td class="memItemLeft" align="right" valign="top">ATDATACORE_EXPORT ATSceneP&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d32/struct_i_txn.html#a62ce6318fda335635f2406a224e6c7e2">CreateNewScene</a> (ATScenesStatus *error, ATProjectR file, WCharCP name, ATScenesType type, bool is3D, ATSceneCP seedScene=NULL, SceneID sceneId=INVALID_SCENEID)</td></tr>
<tr class="memdesc:a62ce6318fda335635f2406a224e6c7e2"><td class="mdescLeft">&#160;</td><td class="mdescRight">在指定的文件中创建新的场景并将其设置为根场景，该场景将会被赋予下一个可用的场景ID  <a href="../../d0/d32/struct_i_txn.html#a62ce6318fda335635f2406a224e6c7e2">更多...</a><br /></td></tr>
<tr class="separator:a62ce6318fda335635f2406a224e6c7e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a57e055b90e6bceac96b5a51a26d9dccf"><td class="memItemLeft" align="right" valign="top">ATDATACORE_EXPORT ATSceneP&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d32/struct_i_txn.html#a57e055b90e6bceac96b5a51a26d9dccf">CreateNewScene</a> (ATScenesStatus *error, ATProjectR file, SceneInfoCR sceneInfo, SceneID sceneId=INVALID_SCENEID)</td></tr>
<tr class="memdesc:a57e055b90e6bceac96b5a51a26d9dccf"><td class="mdescLeft">&#160;</td><td class="mdescRight">在指定的文件中创建新的场景并将其设置为根场景，该场景将会被赋予下一个可用的场景ID  <a href="../../d0/d32/struct_i_txn.html#a57e055b90e6bceac96b5a51a26d9dccf">更多...</a><br /></td></tr>
<tr class="separator:a57e055b90e6bceac96b5a51a26d9dccf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a95c17762108aa7e3f93f66e1077700ae"><td class="memItemLeft" align="right" valign="top">ATDATACORE_EXPORT StatusInt&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d32/struct_i_txn.html#a95c17762108aa7e3f93f66e1077700ae">DeleteScene</a> (ATSceneR <a class="el" href="../../d9/ddc/struct_a_t_scene.html">ATScene</a>)</td></tr>
<tr class="memdesc:a95c17762108aa7e3f93f66e1077700ae"><td class="mdescLeft">&#160;</td><td class="mdescRight">删除场景  <a href="../../d0/d32/struct_i_txn.html#a95c17762108aa7e3f93f66e1077700ae">更多...</a><br /></td></tr>
<tr class="separator:a95c17762108aa7e3f93f66e1077700ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac47b36a58f02ee22794ed394fe9b976f"><td class="memItemLeft" align="right" valign="top"><a id="ac47b36a58f02ee22794ed394fe9b976f" name="ac47b36a58f02ee22794ed394fe9b976f"></a>
ATSceneP&#160;</td><td class="memItemRight" valign="bottom"><b>UnDeleteScene</b> (ATScenesStatus *, ATProjectR, SceneID)</td></tr>
<tr class="separator:ac47b36a58f02ee22794ed394fe9b976f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae3726b53650849456736e3141803eba6"><td class="memItemLeft" align="right" valign="top"><a id="ae3726b53650849456736e3141803eba6" name="ae3726b53650849456736e3141803eba6"></a>
ATDATACORE_EXPORT StatusInt&#160;</td><td class="memItemRight" valign="bottom"><b>SaveSceneProperties</b> (ATSceneR scene, bool bSaveSets=false, bool forceSave=false)</td></tr>
<tr class="separator:ae3726b53650849456736e3141803eba6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a949526b79f1ede5617a4d0b0faba53e2"><td class="memItemLeft" align="right" valign="top"><a id="a949526b79f1ede5617a4d0b0faba53e2" name="a949526b79f1ede5617a4d0b0faba53e2"></a>
ATDATACORE_EXPORT void&#160;</td><td class="memItemRight" valign="bottom"><b>SaveCustomEntryInUndo</b> (byte const *data, size_t numBytes, DeserializeCustomItemFunc func)</td></tr>
<tr class="separator:a949526b79f1ede5617a4d0b0faba53e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pro-methods" name="pro-methods"></a>
Protected 成员函数</h2></td></tr>
<tr class="memitem:aa751ec6e4fc865141cffeea10db69ac3"><td class="memItemLeft" align="right" valign="top"><a id="aa751ec6e4fc865141cffeea10db69ac3" name="aa751ec6e4fc865141cffeea10db69ac3"></a>
ATDATACORE_EXPORT void&#160;</td><td class="memItemRight" valign="bottom"><b>OnObjectChanged</b> (ATObjectDescrP oldOdP, ATObjectDescrP newOdP, ChangeTrackAction, TxnObjectWriteOptions const &amp;, ObjectRefP ref)</td></tr>
<tr class="separator:aa751ec6e4fc865141cffeea10db69ac3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">详细描述</h2>
<div class="textblock"><p >将事务上下文中的修改写入元素的接口 </p>
<dl class="section author"><dt>作者</dt><dd>SZEWEC </dd></dl>
<dl class="section since"><dt>自从</dt><dd>2022/04/28 </dd></dl>
</div><h2 class="groupheader">成员函数说明</h2>
<a id="a8c24a5818957e1d131cd451f64694237" name="a8c24a5818957e1d131cd451f64694237"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8c24a5818957e1d131cd451f64694237">&#9670;&nbsp;</a></span>AddObject()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">ATDATACORE_EXPORT StatusInt ITxn::AddObject </td>
          <td>(</td>
          <td class="paramtype">HEATObjectR&#160;</td>
          <td class="paramname"><em>newEl</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">TxnObjectAddOptions const &amp;&#160;</td>
          <td class="paramname"><em>opts</em> = <code>TxnObjectAddOptions()</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>向场景中添加元素 </p>
<dl class="section note"><dt>注解</dt><dd>newEl必须已经和某个场景关联</dd></dl>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramname">HEATObjectR</td><td>newEl 待添加的元素，必须持有元素描述符 </td></tr>
    <tr><td class="paramname">TxnObjectAddOptions</td><td>const &amp; opts 选项 </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>返回</dt><dd>ATDATACORE_EXPORT StatusInt 成功时返回SUCCESS</dd></dl>
<dl class="section author"><dt>作者</dt><dd>SZEWEC </dd></dl>
<dl class="section since"><dt>自从</dt><dd>2022/04/12 </dd></dl>

</div>
</div>
<a id="a57e055b90e6bceac96b5a51a26d9dccf" name="a57e055b90e6bceac96b5a51a26d9dccf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a57e055b90e6bceac96b5a51a26d9dccf">&#9670;&nbsp;</a></span>CreateNewScene() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">ATDATACORE_EXPORT ATSceneP ITxn::CreateNewScene </td>
          <td>(</td>
          <td class="paramtype">ATScenesStatus *&#160;</td>
          <td class="paramname"><em>error</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ATProjectR&#160;</td>
          <td class="paramname"><em>file</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">SceneInfoCR&#160;</td>
          <td class="paramname"><em>sceneInfo</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">SceneID&#160;</td>
          <td class="paramname"><em>sceneId</em> = <code>INVALID_SCENEID</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>在指定的文件中创建新的场景并将其设置为根场景，该场景将会被赋予下一个可用的场景ID </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramname">ATScenesStatus</td><td>* error 失败的原因，可能值为ATScenes_STATUS_InvalidSceneName、ATScenes_STATUS_DuplicateSceneName、ATScenes_STATUS_NotFound </td></tr>
    <tr><td class="paramname">ATProjectR</td><td>file 场景所处的文件 </td></tr>
    <tr><td class="paramname">SceneInfoCR</td><td>sceneInfo 新场景的场景信息，所有字段必须有效并且场景名称必须唯一 </td></tr>
    <tr><td class="paramname">SceneID</td><td>sceneId 新场景的ID，传INVALID_MODELID即可 </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>返回</dt><dd>ATDATACORE_EXPORT ATSceneP 指向新场景的指针</dd></dl>
<dl class="section author"><dt>作者</dt><dd>SZEWEC </dd></dl>
<dl class="section since"><dt>自从</dt><dd>2022/04/12 </dd></dl>

</div>
</div>
<a id="a62ce6318fda335635f2406a224e6c7e2" name="a62ce6318fda335635f2406a224e6c7e2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a62ce6318fda335635f2406a224e6c7e2">&#9670;&nbsp;</a></span>CreateNewScene() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">ATDATACORE_EXPORT ATSceneP ITxn::CreateNewScene </td>
          <td>(</td>
          <td class="paramtype">ATScenesStatus *&#160;</td>
          <td class="paramname"><em>error</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ATProjectR&#160;</td>
          <td class="paramname"><em>file</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">WCharCP&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ATScenesType&#160;</td>
          <td class="paramname"><em>type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>is3D</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ATSceneCP&#160;</td>
          <td class="paramname"><em>seedScene</em> = <code>NULL</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">SceneID&#160;</td>
          <td class="paramname"><em>sceneId</em> = <code>INVALID_SCENEID</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>在指定的文件中创建新的场景并将其设置为根场景，该场景将会被赋予下一个可用的场景ID </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramname">ATScenesStatus</td><td>* error 失败的原因，可能值为ATScenes_STATUS_InvalidSceneName、ATSCENES_STATUS_DuplicateSceneName、ATScenes_STATUS_NotFound </td></tr>
    <tr><td class="paramname">ATProjectR</td><td>file 场景所处的文件 </td></tr>
    <tr><td class="paramname">WCharCP</td><td>name 场景的名称，必须唯一 </td></tr>
    <tr><td class="paramname">ATScenesType</td><td>type 场景类型 </td></tr>
    <tr><td class="paramname">bool</td><td>is3D 是否是三维场景 </td></tr>
    <tr><td class="paramname">ATSceneCP</td><td>seedScene 提供默认场景设置的种子场景，传NULL时使用默认值 </td></tr>
    <tr><td class="paramname">SceneID</td><td>sceneId 新场景的ID，传INVALID_MODELID即可 </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>返回</dt><dd>ATDATACORE_EXPORT ATSceneP 指向新场景的指针</dd></dl>
<dl class="section author"><dt>作者</dt><dd>SZEWEC </dd></dl>
<dl class="section since"><dt>自从</dt><dd>2022/04/12 </dd></dl>

</div>
</div>
<a id="a4a17a8eb66a2d6c566fa0681308811d6" name="a4a17a8eb66a2d6c566fa0681308811d6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4a17a8eb66a2d6c566fa0681308811d6">&#9670;&nbsp;</a></span>DeleteObject()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">ATDATACORE_EXPORT StatusInt ITxn::DeleteObject </td>
          <td>(</td>
          <td class="paramtype">ObjectRefP&#160;</td>
          <td class="paramname"><em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">TxnObjectWriteOptions const &amp;&#160;</td>
          <td class="paramname"><em>opts</em> = <code>TxnObjectWriteOptions()</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>从场景中删除元素 </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramname">ObjectRefP</td><td>obj 待删除元素的元素引用，必须有效 </td></tr>
    <tr><td class="paramname">TxnObjectWriteOptions</td><td>const &amp; opts 选项 </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>返回</dt><dd>ATDATACORE_EXPORT StatusInt 成功时返回SUCCESS</dd></dl>
<dl class="section author"><dt>作者</dt><dd>SZEWEC </dd></dl>
<dl class="section since"><dt>自从</dt><dd>2022/04/12 </dd></dl>

</div>
</div>
<a id="a95c17762108aa7e3f93f66e1077700ae" name="a95c17762108aa7e3f93f66e1077700ae"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a95c17762108aa7e3f93f66e1077700ae">&#9670;&nbsp;</a></span>DeleteScene()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">ATDATACORE_EXPORT StatusInt ITxn::DeleteScene </td>
          <td>(</td>
          <td class="paramtype">ATSceneR&#160;</td>
          <td class="paramname"><em>ATScene</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>删除场景 </p>
<dl class="section note"><dt>注解</dt><dd>查找场景的接口如ATProject::FindModelIdByName以及场景容器如ModelIndex将不会返回一个被删除的场景 </dd>
<dd>
该接口不会真正从物理文件中删除场景，需调用ATProject::ProcessChanges接口以从文件中移除被删除的场景</dd></dl>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramname">ATSceneR</td><td><a class="el" href="../../d9/ddc/struct_a_t_scene.html" title="场景对象">ATScene</a> 待删除的场景 </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>返回</dt><dd>ATDATACORE_EXPORT StatusInt 成功时返回SUCCESS</dd></dl>
<dl class="section author"><dt>作者</dt><dd>SZEWEC </dd></dl>
<dl class="section since"><dt>自从</dt><dd>2022/04/12 </dd></dl>

</div>
</div>
<a id="ae21e31eaa74e4d15acb245dff56f3f17" name="ae21e31eaa74e4d15acb245dff56f3f17"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae21e31eaa74e4d15acb245dff56f3f17">&#9670;&nbsp;</a></span>ReplaceObject()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">ATDATACORE_EXPORT StatusInt ITxn::ReplaceObject </td>
          <td>(</td>
          <td class="paramtype">HEATObjectR&#160;</td>
          <td class="paramname"><em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ObjectRefP&#160;</td>
          <td class="paramname"><em>in</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">TxnObjectWriteOptions const &amp;&#160;</td>
          <td class="paramname"><em>opts</em> = <code>TxnObjectWriteOptions()</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>替换场景中已存在的元素 </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramname">HEATObjectR</td><td>obj 待替换元素 </td></tr>
    <tr><td class="paramname">ObjectRefP</td><td>in 待替换元素的元素引用，必须是已存在的有效元素 </td></tr>
    <tr><td class="paramname">TxnObjectWriteOptions</td><td>const &amp; opts 选项 </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>返回</dt><dd>ATDATACORE_EXPORT StatusInt 成功时返回SUCCESS</dd></dl>
<dl class="section author"><dt>作者</dt><dd>SZEWEC </dd></dl>
<dl class="section since"><dt>自从</dt><dd>2022/04/12 </dd></dl>

</div>
</div>
<hr/>该结构体的文档由以下文件生成:<ul>
<li>D:/doxy/PublicAPI/ATDataCore/<a class="el" href="../../d8/d09/_i_a_t_txn_8h_source.html">IATTxn.h</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
制作者&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3
</small></address>
</body>
</html>
